Installation et configuration de Samba en mode "User"
Contents
1 Introduction
Samba est un logiciel libre sous licence GPL supportant le protocole SMB/CIFS. Ce protocole est employé par Microsoft pour le partage de diverses ressources (fichiers, imprimantes, etc.) entre ordinateurs équipés de Windows. Samba permet aux systèmes Unix d'accéder aux ressources de ces systèmes et vice-versa.
Auparavant, les PC, équipés de DOS et des premières versions de Windows, devaient parfois installer une pile TCP/IP, et un ensemble de logiciels d'origine Unix : un client NFS, FTP, telnet, lpr, etc. Cela était lourd et pénalisant pour les PC de l'époque, et il obligeait par ailleurs leurs utilisateurs à contracter un double jeu d'habitudes, ajoutant celles d'UNIX à celles de Windows. Samba adopte donc la démarche inverse.
Son nom provient du protocole de partage et d'impression de fichiers d'IBM et réutilisé par Microsoft nommé SMB (Server message block), auquel ont été ajoutées les deux voyelles a : « SaMBa ».
Samba a été développé à l'origine par Andrew Tridgell,dès 1991 , et reçoit aujourd'hui les contributions d'une vingtaine de développeurs originaires du monde entier sous sa coordination. Celui-ci lui donna ce nom, en choisissant un nom voisin de SMB en interrogeant un dictionnaire Unix, par la commande grep : grep "^s.*m.*b" /usr/dict/words
Lorsque les deux systèmes de partage de fichiers (NFS, Samba) sont installés pour comparaison, Samba se révèle moins performant que NFS au niveau des taux de transferts.
Néanmoins, une étude a montré que Samba 3 était jusqu'à 2,5 fois plus rapide que l'implémentation SMB de Windows serveur 2003 Voir l'information sur LinuxFr
Toutefois, samba n'est pas compatible avec IPv6
Le mode "User" permet de partager de façon simple par utilisateur des dossiers. Vous avez alors besoin d'un login et un de mot de passe. C'est une solution suffisament sécurisée pour les petites entreprises.
2 Installation
2.1 Debian
Pour installer samba :
aptitude |
aptitude install samba |
2.2 FreebSD
Pour FreeBSD :
pkg_add |
pkg_add -r samba34 |
3 Configuration
Pour configurer samba, éditez le fichier /etc/samba/smb.conf (/usr/local/etc/smb.conf sous FreeBSD) :
Quelques explications :
- Configurez d'abord les données dans Global
- Définissez bien l'OS level < à 20 sauf si il agit en tant que contrôleur de domaine, alors > 50
Adaptez tout ceci pour votre configuration. Ensuite redémarrez Samba :
/etc/init.d/samba restart |
ou comme ceci sous FreeBSD :
/usr/local/etc/rc.d/samba restart |
Maintenant, il faut rajouter des utilisateurs ! C'est assez simple, mais c'est le genre de trucs que l'on oublie souvent :
smbpasswd |
smbpasswd -a deimos |
Ceci va ajouter mon utilisateur deimos. Et voici la liste des options possible :
Sous FreeBSD, vous pourrez trouver le fichier contenant la liste des utilisateurs autorisés dans /usr/local/etc/samba34.
Pour FreeBSD toujours, si vous souhaitez que Samba démarre automatiquement au boot :
echo |
echo 'samba_enable="YES"' >> /etc/rc.conf.local |
4 Connection
4.1 Windows
Pour vous connectez depuis windows, dans une fenetre de liens, tapez ceci :
\\IP_du_serveur_samba\Nom_du_partage |
Vous accéderez directement au partage
4.2 Unix (Linux/Mac...)
Vous devez avoir smbfs d'installer avant de continuer :
aptitude |
aptitude install smbfs |
Ensuite, il suffit de créer un dossier et de monter le partage dedans :
mkdir saves mount -t cifs -o username=user,password=mot_de_passe //192.168.0.1/saves ./saves |
5 FAQ
5.1 Test sa configuration
Si vous avez quelques problèmes, voici un moyen de vérifier sa configuration (FreeBSD) :
testparm |
/usr/local/bin/testparm -s |
5.2 Unable to connect to CUPS server localhost:631 - Connection refused
Si vous n'utilisez pas de serveur d'impression CUPS, alors faites les modifications suivante pour le désactiver et permettre à Samba de démarrer :
/etc/samba/smb.conf |
# Disable printers load printers = no show add printer wizard = no printing = none printcap name = /dev/null disable spoolss = yes |
5.3 Migrer son fichier smbpasswd vers tdbsam
Il est possible qu'en mettant à jour votre Samba, votre fichier smbpasswd ne fonctionne plus et doive être remplacé par un tdbsam. Tous vos utilisateurs ne fonctionneront alors plus. Le moyen le plus simple est de convertir tous vos anciens comptes vers ce nouveau format :
cd /etc/samba pdbedit -i smbpasswd -e tdbsam |
Il est possible que vous ayez à modifier votre fichier de configuration samba pour y rajouter ceci :
/etc/samba/smb.conf |
passdb backend = tdbsam:/var/lib/samba/passdb.tdb |
6 Ressources
Si vous souhaitez pousser les droits sur les dossiers, regardez la documentation sur les ACL.
Autres documentations sur Samba
CIFS Solaris Workgroup
http://www.csua.berkeley.edu/~ranga/notes/freebsd_samba.html+samba+freebsd&cd=6&hl=fr&ct=clnk&client=ubuntu
http://www.tobanet.de/dokuwiki/samba:upgrade